import java.util.Stack
fun main(){
var s = Stack<Char>()
var inp = readln()
var match = true;
for(i in 0 .. inp.length-1){
if(inp[i]=='('){
s.push(inp[i])
}
if(inp[i]==')'){
if(s.empty()!=true){
s.pop()
}
else{
match = false;
}
}
}
if(match){
println("Yes")
}
else{
println("NO")
}
}
有一點難喔,不知道大家有沒有做對。
接下來要介紹的資料結構是MutableList。
簡單來說,他是可以擴充的陣列,所以宣告方法一樣。
var ml = MutableList<Int>(0){0}
不過這次我們的size就可以先為0了,因為你是可以不斷塞值進去的。
如果我們需要塞值進去,只要使用add() method,像這樣:
a.add(12)
喔對了我在陣列的時候忘記提到,這裡再補充一下,MutableList跟陣列都有一個屬性叫size,可以知道他的大小,字串則有一個length的屬性可以用。
如果你要刪值的話,你可以使用removeAt()這個method,參數則是第幾格。
其他使用方法就跟陣列一樣了,取值一樣用[]就行。
fun main(){
var a:MutableList<Int> = MutableList<Int>(0){0}
a.add(420)
a.add(114514)
println(a.size)
for(i in 0..a.size-1){
println("${a[i]}")
}
a.removeAt(0)
}
輸出結果是
2
420
114514
今天沒有練習題目,不過一樣還是自己玩玩看MutableList喔~